cmake_minimum_required(VERSION 3.27)

# 定义项目名称为 "MySBOT"，版本号为 0.1，使用的编程语言为 C++
project(MySbotPlugins)

# 获取当前目录下所有的子目录
file(GLOB CHILDREN RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*)

# 忽略编译的插件列表
set(IGNORED_DIRECTORIES
    # TemplatePlugin
    MySbotPlugin
    SbotFocPlugin
    # TeminalPlugin
)

# 遍历子目录
foreach(CHILD ${CHILDREN})
    # 检查是否是需要忽略的目录
    if (${CHILD} IN_LIST IGNORED_DIRECTORIES)
        continue()
    endif()

    # 在每个子目录中搜索 CMakeLists.txt 文件
    file(GLOB CHILD_CMAKE "${CMAKE_CURRENT_SOURCE_DIR}/${CHILD}/CMakeLists.txt")
    # 如果找到了 CMakeLists.txt 文件，则添加子目录
    if(CHILD_CMAKE)
        add_subdirectory(${CHILD})
    endif()
endforeach()

# 包含 GNUInstallDirs 模块，用于跨平台的安装路径设置
include(GNUInstallDirs)
